Nodes of a distributed computing system communicate over a communication network. Nodes can be computing systems that each include at least one programmable processor. A distributed system can, in a non-limiting example, be a plurality of computing nodes (also referred to simply as “nodes”) that implement a distributed data storage application or any other kind of application in which exchange of messages between nodes occurs to enable the multiple nodes to remain synchronized with regard to processes being executed by the distributed computing system. A process as used herein refers generally to any kind of data processing, data storage, or other computer-implemented process. A communication network can include one or more of a wired network, a wireless network, a local area network, a wide area network, an organization's intranet, the Internet, or the like. Usually, nodes in a distributed system use consensus protocols to coordinate replication of data on several nodes to enable continued operation in case of a failure of one or more of the nodes of the cluster. Other nodes of a plurality of nodes besides a node being referenced are generally referred to as “peer nodes” or simply “peers” of the node.